package br.com.curso.orcamento;

public class DescontoPorVendaCasada implements Desconto {

	private Desconto proximo;
	
	@Override
	public double aplicaDesconto(Orcamento orcamento) {
		boolean existeLapis = existe("LAPIS", orcamento);
		boolean existeCaneta = existe("CANETA", orcamento);
		if (existeLapis && existeCaneta) {
			return orcamento.getValor() * 0.05;
		}
		return proximo.aplicaDesconto(orcamento);
	}

	@Override
	public void setProximo(Desconto proximo) {
		this.proximo = proximo;
	}
	
	private boolean existe(String nomeDoItem, Orcamento orcamento) {
	    for (Item item : orcamento.getItens()) {
	        if(item.getNome().equals(nomeDoItem)) return true;
	    }
	    return false;
	}

}
